package cn.explink.dop.service;

import java.util.List;
import java.util.Map;

import org.springframework.transaction.annotation.Transactional;

import cn.explink.dop.entity.vo.DeliveryCompanyVO;
import cn.explink.eap.core.common.service.CommonService;

/**
 *
 * @ClassName: DeliveryCompanyService
 * @Description: 配送公司管理Service接口
 * @author 孟凡岭
 * @date 2015年5月25日 下午6:09:45
 * @since AR1.0
 */
@Transactional
public interface DeliveryCompanyService extends CommonService {
	/**
	 *
	 * @Title: queryListByPage
	 * @Description: 分页查询
	 * @author 孟凡岭
	 * @param @param company
	 * @param @param pageNum
	 * @param @param pageSize
	 * @param @return
	 * @return Map<String,Object> 返回类型
	 * @throws
	 */
	Map<String, Object> queryListByPage(DeliveryCompanyVO company, int pageNum, int pageSize);

	/**
	 *
	 * @Title: updateEmployeeNum
	 * @Description: 更新配送公司人员数量
	 * @author 孟凡岭
	 * @param @param companyId
	 * @param @param type，类型，1：加，2：减
	 * @param @param num，数量
	 * @return void 返回类型
	 * @throws
	 */
	void updateEmployeeNum(String companyId, int type, int num);
	
	/**
	 * 
	* @Title: getCanStopCompanyId 
	* @Description: 过滤传入的公司id，获取可以通用的公司集合（如果旗下有配送员还有订单未完成，那么不能停用） 
	* @author 小强
	* @param @param companyIds
	* @param @return    设定文件 
	* @return String[]    返回类型 
	* @throws
	 */
	List<String> getCanStopCompanyId(String[] companyIds);

	/**
	 *
	 * @Title: updateStatus
	 * @Description: 更改配送公司状态
	 * @author 孟凡岭
	 * @param @param ids
	 * @param @param status
	 * @return void 返回类型
	 * @throws
	 */
	void updateStatus(String[] ids, int status);
}
